/*!
 @header
 @abstract    ICShowView.h
 @discussion  ICShowView处理如下两个问题：
 1、提示框
 2、提示之后执行某个操作
 3、多不执行
 4、执行某个方法时显示进度
 @updated     2013-04-23
 @author      Fox
 @version     1.0.0
 */

#import <Foundation/Foundation.h>
#import "MBProgressHUD.h"

//#import "UIAlertView+ICBlockAdditions.h"

typedef void (^dispatch_stage_block_t)(MBProgressHUD *hud);

/*!
 @class
 @abstract      ICShowView
 @discussion    提示框
 */
@interface ICShowView : NSObject


/*!
 @method
 @abstract      弹出MB对话框，过一段时间结束
 @discussion    弹出MB对话框，过一段时间结束
 
 @param     currentView        将MB添加到的目标视图
 @param     message            需要显示的信息
 @param     duration           显示的时间
 */
+ (void)showMBAlertView:(UIView *) currentView
                message:(NSString *) message
               duration:(float) duration;

/*
 * @breif   创建MB对话框
 */
+ (void)showHUDAddedTo:(UIView *)targtView withText:(NSString *)text;

/*!
 @method
 @abstract      弹出MB对话框，过一段时间结束
 @discussion    去除时间参数，默认0.3秒
 
 @param     currentView        将MB添加到的目标视图
 @param     message            需要显示的信息
 */
+ (void)showMBAlertView:(UIView *) currentView
                message:(NSString *) message;


/*!
 @method
 @abstract      弹出MB对话框，过一段时间结束
 @discussion    去除时间参数和目标视图，时间默认为0.3秒，视图默认为window
 
 @param     message            需要显示的信息
 */
+ (void)showMBAlertViewWithMessage:(NSString *) message;

/*!
 @method
 @abstract      操作完成的界面
 @discussion    去除时间参数和目标视图，时间默认为0.3秒，视图默认为window
 
 @param     message            需要显示的信息
 */
+ (void)showMBDownAlertViewWithMessage:(NSString *)message;


/*!
 @method
 @abstract      弹出系统自带的Alter，过一段时间结束
 @discussion    去除时间参数和目标视图，时间默认为0.3秒，视图默认为window
 
 @param     message            需要显示的信息
 */
+ (void)showUIAlertViewWithMessage:(NSString *) message;


/*!
 @method
 @abstract      弹出MB对话框，过一段时间结束,完成执行
 @discussion    添加显示完成后的执行操作
 
 @param     currentView        将MB添加到的目标视图
 @param     message            需要显示的信息
 @param     duration           显示的时间
 @param     completion         显示完成后的操作
 */
+ (void) showMBAlertView:(UIView *) currentView
                 message:(NSString *) message
                duration:(float) duration
         completionBlock:(dispatch_block_t) completion;


/*!
 @method
 @abstract      弹出MB对话框，在方法执行期间显示
 @discussion    执行某个操作时加载loading效果
 
 @param     currentView        将MB添加到的目标视图
 @param     message            需要显示的信息
 @param     block              执行的操作，时间根据这个来定
 @param     completion         完成后的操作
 */
+ (void) showMBAlertView:(UIView *) currentView message:(NSString *) message whileExecutingBlock:(dispatch_block_t)block completionBlock:(dispatch_block_t) completion;






@end
